// 作业题1：泛型约束基础
// 定义接口 HasName，包含 name: string。
// 编写泛型函数 printName<T extends HasName>(obj: T): void，打印 obj.name。
// 测试用例：
// printName({ name: "Alice", age: 30 });  // 合法
interface HasName {
    name: string;
}
function printName<T extends HasName>(obj: T): void {
    console.log(obj.name);
}
printName({ name: "Alice", age: 30 })